From: Adel Gadllah Date: Fri, 21 Feb 2014 11:30:40 +0000 (+0100) Subject: perf: Restore shell after runs X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~2697 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=e37a3fa7e6a5b19690c6c8f3f1a014a8b346fef5;p=gnome-shell.git perf: Restore shell after runs Currently running the perf tool results into no wm running afterwards making it hard for the user to get the results from a terminal and generally does not make it easy for users to run it to gather numbers. So restore the shell after the test has completed. https://bugzilla.gnome.org/show_bug.cgi?id=724870 --- diff --git a/src/gnome-shell-perf-tool.in b/src/gnome-shell-perf-tool.in index 1ad67b804..4494a9241 100644 --- a/src/gnome-shell-perf-tool.in +++ b/src/gnome-shell-perf-tool.in @@ -99,6 +99,15 @@ def run_shell(perf_output=None): shell.wait() return shell.returncode == 0 +def restore_shell(): + pid = os.fork() + if (pid == 0): + if "MUTTER_WM_CLASS_FILTER" in os.environ: + del os.environ["MUTTER_WM_CLASS_FILTER"] + os.execlp("gnome-shell", "gnome-shell", "--replace") + else: + sys.exit(0) + def upload_performance_report(report_text): try: config_home = os.environ['XDG_CONFIG_HOME'] @@ -320,6 +329,6 @@ if args: normal_exit = run_performance_test() if normal_exit: - sys.exit(0) + restore_shell() else: sys.exit(1)